home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d8 / shrom16c.arc / SHROOM.DOC < prev   
Text File  |  1991-06-22  |  11KB  |  262 lines

  1.  
  2.     shroom.doc    - readme file for Shell Room Utility
  3.  
  4.     Copyright (C) Davis Augustine 1990, 1991.  All rights reserved.
  5.  
  6.     Last Modified:    22jun91.  Version 1.6c
  7.  
  8. Files
  9. -----
  10.     SHROOM.COM    - The program.
  11.     SHROOM.DOC    - This documentation file.
  12.  
  13. Description
  14. -----------
  15.     SHROOM is a utility that gives a DOS application's shells more
  16.     room.  It does this by intercepting the shell operation,
  17.     swapping out the application program, freeing up the memory,
  18.     and then performing the shell operation.  It also
  19.     intercepts the exit from the shell, so that it can swap
  20.     the application back in before returning to it.  The program
  21.     is none the wiser.
  22.  
  23. Features
  24. --------
  25.      o    Easy to use.
  26.      o    Detects swap file overflow (disk full) and asks whether you want
  27.     to abort back to the application or continue with a partial swap.
  28.      o    Detects TSR loading and unloading during the shell.  Frees
  29.     the TSR's resources and puts a warning message.
  30.      o    Small resident size (about 6k).  Frees nearly all of the memory.
  31.      o    Allows you to increase COMMAND.COM's environment size.
  32.      o    Works with all major DOS applications.
  33.      o    Fully user specifiable swap file path.    Ie., you can put
  34.     it on a virtual disk.
  35.      o    Swaps allocated memory only, avoiding unnecessary writes
  36.     and reads of free memory.
  37.      o    Intelligent command line parsing.  Searches DOS's PATH
  38.     for program to load, allows passing of args to the program.
  39.     Automatically tries .COM and .EXE extensions if not
  40.     specified by user.
  41.      o    Verbose mode for inquisitive users.
  42.      o    Quiet mode for apathetic users.
  43.      o    Uses DOS "make temp file" facility to prevent network clashes.
  44.  
  45.  
  46. Installation and Operation
  47. --------------------------
  48.      o    To install, just copy SHROOM.COM into a directory in your PATH
  49.     or the directory from which you will run the application.
  50.      o    For help, use the question mark switch, eg. "shroom -?".
  51.      o    To load, just type the normal command used to invoke the
  52.     application, with "shroom " prepended.  Eg, if the application
  53.     is called "edit", then you would use the command "shroom edit".
  54.     Arguments are passed to the application just as before, so eg.
  55.     you can say "shroom edit letter.doc".
  56.      o    To shell out, use whatever shell command is provided by the
  57.     application.  You will see a message from Shroom saying that it
  58.     is swapping the program out, after which the normal shell prompt
  59.     and actions will appear.  When you exit the shell, you will
  60.     again see the "swapping" message from Shroom and then be
  61.     deposited back into the application as usual.
  62.  
  63.  
  64. Help Screen - Displayed by the "-?" switch:
  65. -------------------------------------------
  66.  
  67. Usage:     shroom [-?hLnpqv] [-e #] [-s path] [-t targets] [-z #] prog [args]
  68.        -?h : print this help message
  69.     -L : display shareware license
  70.     -n : display program notes
  71.     -p : proceed (without asking) with partial swap if disk full
  72.     -q : quiet mode - display error messages only
  73.     -v : verbose mode - provide running commentary
  74.       -e # : set ERRORLEVEL returned if unable to load prog (default = 254)
  75.    -s path : specify DRIVE:DIR in which to create swap file
  76.   -t targs : specify which shell programs cause swapping
  77.       -z # : specify environment size for COMMAND.COM
  78.       prog : application program to execute
  79.       args : command line to pass to the application
  80.  
  81. Example:   shroom  -p  -e 99  -s E:\  -z 800  wp  letter
  82.  
  83.  
  84. Notes Screen - Displayed by the "-n" switch:
  85. --------------------------------------------
  86.       ********** NOTES **********
  87.  
  88. PROGRAM LOADING:
  89.     The application must be a .EXE or .COM file.  You can leave off the
  90. file extension and Shroom will try to find a matching .COM or .EXE file.
  91. Shroom searches for the application program first in the current directory,
  92. then in Shroom's home directory, and finally in the directories of the
  93. PATH environment string.
  94.  
  95.  
  96. SHROOM SWITCHES AND ARGUMENTS:
  97.     All text surrounded by square brackets, as in "[-hLn]", is optional.
  98. Switches can be given in any order, and can be in upper or lower case,
  99. and may be separated by spaces (or not). The space between a switch and
  100. its argument is optional, ie. you can say "-z800" or "-z 800".
  101.  
  102.  
  103. TARGET LIST:
  104.     Shroom checks the name of the shell program against this list and does
  105. not swap if it is not in the list. The list can contain multiple program
  106. names separated by commas. It can be an asterisk (-t *) if you want Shroom
  107. to swap for all shell programs.  The default target list is COMMAND.COM.
  108. You would normally only use the -t option if your system uses a shell other
  109. than DOS's COMMAND.COM. For instance, your CONFIG.SYS might have the line:
  110. "SHELL=C:\WOWSHELL.COM" in it.
  111.  
  112.  
  113. ENVIRONMENT SIZE:
  114.     Many people have run into the following problem: you type the command
  115. "SET MYVAR=WHATEVER" and get back the message "Out of environment space."
  116. This occurs when a TSR is loaded or while a .BAT file is running. You get
  117. around this by adding a line like "SHELL=C:\COMMAND.COM /E:2000" to your
  118. CONFIG.SYS file, thus increasing the minimum environment space to 2000
  119. bytes. However, when you shell out from an application and then run a
  120. .BAT file, you find that the environment size has again been restricted
  121. and the CONFIG.SYS line has no effect.
  122.  
  123.     What you need is the amazing new "-z #" switch from Shroom. It causes
  124. Shroom to append the string " /E:#" to COMMAND.COM's command line, thus
  125. setting the desired minimum environment space for the new shell. Note that
  126. in DOS 3.0 and earlier versions, # is the size in paragraphs. In later
  127. versions it is in bytes.
  128.  
  129.  
  130. EXIT RETURN CODES:
  131.     Shroom exits immediately if it cannot load the application, returning
  132. an ERRORLEVEL of 254, unless you have changed the value with the "-e errlevel"
  133. switch.  If it can load the application, then it exits when the application
  134. does, and returns the application's exit code.
  135.  
  136.  
  137. APPLICATIONS THAT DO "BACKGROUND PROCESSING":
  138.     You may have a communications package which allows you to initiate a
  139. file transfer and then shell out to do other things.  This will probably
  140. not work if the package was Shroom'ed, because the application is actually
  141. unloaded from memory (and from the interrupt vector table) during the
  142. shell.    The background processing code will not be there anymore!
  143.  
  144.  
  145. ENVIRONMENTAL IMPACT:
  146.     Shroom is processor (8086, 286, 386, etc) independent.  It does not do
  147. any floating point.  It doesn't care about or use expanded or extended
  148. memory (a future version will be able to swap to extended mem).  It works
  149. with DOS Extender (eg. Pharlap) based applications.  It may work in the
  150. Windows, Desqview and other pseudo or real multi-tasking environments, but
  151. you're basically on your own (caveat sharer).
  152.  
  153.  
  154. Shareware License - Displayed by the "-L" switch:
  155. -------------------------------------------------
  156.  
  157.       ********** SHROOM SHAREWARE LICENSE **********
  158.  
  159.  This is a copyrighted software work which is distributed as shareware.
  160.  Under this license agreement you are granted the right to use Shroom
  161.  on all machines and environments that it supports.  You are also
  162.  free (and encouraged) to pass copies of this shareware on to others
  163.  as long as it is not for payment and not bundled with anything else
  164.  that is for payment.
  165.  
  166.  To become a registered user and receive immediate notice of updates,
  167.  please send a registration fee by check or money order of $25 to:
  168.  
  169.            Davis Augustine
  170.            P.O. Box 390178
  171.            Cambridge, MA. 02139
  172.  
  173.  Commercial distribution licenses, source code and customized versions
  174.  are also available at reasonable rates.  Please write to the above address
  175.  or send me email at CompuServe id 72230,3053.    I would also appreciate any
  176.  comments, questions, suggestions or bug reports.  This release of Shroom
  177.  can currently be found in CompuServe forums WPSGA, lib 9, and IBMSYS, lib 3.
  178.  
  179.  
  180.         ----------------------
  181.         |  REVISION HISTORY  |
  182.         ----------------------
  183.  
  184. Changes in v1.6c (22jun91)
  185. --------------------------
  186.     Get default target list from the COMSPEC environment string. So, if
  187. you use a shell other than COMMAND.COM, Shroom will automatically recognize
  188. it.  (Thanks to user MB)
  189.  
  190.     Fix problem in 1.6b, where swapping may have not been done with
  191. some applications.  Was failing to handle lowercase shell names correctly.
  192.  
  193.  
  194. Changes in v1.6b (14jun91)
  195. --------------------------
  196.     Only swap out specified shell programs.  Default list is COMMAND.COM.
  197. Add -t switch to specify others. (Thanks to user LH)
  198.  
  199.     Add -z switch to allow increasing the environment space of
  200. COMMAND.COM. (Thanks to user DM)
  201.  
  202.     The -v switch as part of its verbosity shows the shell program being
  203. executed and its command line.
  204.  
  205.  
  206. Changes in v1.5d (3may91)
  207. --------------------------
  208.     Search for the application in Shroom's home directory, too.
  209. (Thanks to user CS)
  210.  
  211.  
  212. Changes in v1.5c (26apr91)
  213. --------------------------
  214.     Fix a bug in 1.5b, when checking for unswappable blocks.  Caused
  215. some applications to swap zero bytes.  (Thanks to user JG)
  216.  
  217.     Mention CompuServe home library in license.
  218.  
  219.  
  220. Changes in v1.5b (29mar91)
  221. --------------------------
  222.     Fix a bug in swapping.    Leave alone any high blocks that are
  223. allocated by TSR's.  This caused shells to hang when Shroom was used
  224. with some software (such as QCache).  (Thanks to user RM)
  225.  
  226.  
  227. Changes in v1.5a (24mar91)
  228. --------------------------
  229.     Add -q switch for quiet mode.  Suppresses the "SHROOM: swapping..."
  230. messages but still lets error messages through.
  231.  
  232.     Add -p switch to force partial swaps.  If Shroom is unable to
  233. swap all of the application out, it normally asks you whether you want
  234. to proceed with the shell or return to the application.  With the -p
  235. switch, it always proceeds with the shell without asking you.
  236.  
  237.     Add -e errorlevel switch to allow you to specify the exit value
  238. returned by Shroom if it is unable to load the application.  This allows
  239. you to choose a value which does not conflict with those returned by
  240. your other applications.  This feature is only useful to those who make
  241. serious use of "if ERRORLEVEL..." statements in DOS batch files.
  242. (Thanks to user WB)
  243.  
  244.     Add -n switch to show program notes, and add more information
  245. to the notes.  There is now a help screen (-h), a shareware license
  246. screen (-l) and a notes screen (-n).
  247.  
  248.     Properly delete the temporary swap file when the user aborts
  249. the shell on disk full error (ie. when you pick 'A' to return to the
  250. application).  In previous versions of Shroom, the file was never
  251. deleted, thus leaving temporary files with names like "0A982331" lying
  252. around.
  253.  
  254.  
  255. Changes in v1.4d (14mar91)
  256. --------------------------
  257.     Shroom returns the ERRORLEVEL of the application program which
  258. was executed.  If the application fails to execute, then Shroom returns
  259. an ERRORLEVEL of 2.  Previously, Shroom always returned ERRORLEVEL 0
  260. if the application was successfully executed.
  261.  
  262.